/********************************************************************
	created:	2012/04/08   17:44
	filename: 	zr_handler_invoke.h
	author:		supercaco@sina.com
	purpose:	
*********************************************************************/
#ifndef _HY_HANDLER_INVOKE_H_
#define _HY_HANDLER_INVOKE_H_

namespace hy {

	template <typename Function>
	inline void hy_handler_invoke(Function function, ...)
	{
		function();
	}

	template <typename Function, typename Context>
	inline void invoke(const Function& function, Context* context)
	{
		hy_handler_invoke(function, context);
	}
} //namspace hy

namespace hy_handler_invoke_helpers {

	template <typename Function, typename Context>
	inline void invoke(const Function& function, Context* context)
	{
		using namespace hy;
		hy_handler_invoke(function, context);
	}

} // namespace hy_handler_invoke_helpers



#endif //_HY_HANDLER_INVOKE_H_
